/**
 * 
 */
package webprog;

import java.util.ArrayList;
import java.util.List;



/**
 * @author Gennadi Heimann
 * Singelton Klassse speichert alle Websocket
 *
 */
public class Verbindungsliste {
	 
	private static final Verbindungsliste verbindungen = new Verbindungsliste();
	private boolean nameTakenFlag;
	
	List<DatenSendenUndEmpfangen> websockets = new ArrayList<DatenSendenUndEmpfangen>();
		
	
	public static Verbindungsliste getInstance(){
		return Verbindungsliste.verbindungen;
	}
	
	public synchronized List<DatenSendenUndEmpfangen> getVerbindungen(){
		return websockets;
	}
	public synchronized void setVerbindungen(DatenSendenUndEmpfangen websocket){
		websockets.add(websocket);
	}
	public synchronized void removeVerbinding(DatenSendenUndEmpfangen websocket){
		websockets.remove(websocket);
		websockets.retainAll(websockets);
//		for(DatenSendenUndEmpfangen d : websockets){
////			System.out.println("Websocket: " + d.getId());
//		}
		
	}
	public synchronized void nameTaken(){
		this.nameTakenFlag = true;
	}
	public synchronized void nameTakenZurucksetzen(){
		this.nameTakenFlag = false;
	}
	public synchronized boolean getNameTaken(){
		return this.nameTakenFlag;
	}
}
